home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / a_man / cat7 / failover.z / failover
Encoding:
Text File  |  2001-04-17  |  13.4 KB  |  265 lines

  1.  
  2.  
  3.  
  4. ffffaaaaiiiilllloooovvvveeeerrrr((((7777MMMM))))                                                      ffffaaaaiiiilllloooovvvveeeerrrr((((7777MMMM))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      failover - disk device alternate path support
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      ////eeeettttcccc////iiiinnnniiiitttt....dddd////ffffaaaaiiiilllloooovvvveeeerrrr [[[[iiiinnnniiiitttt||||ssssttttaaaarrrrtttt]]]]
  13.  
  14. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  15.      Failover creates an infrastructure for the definition and management of
  16.      multiple paths to a single disk device or lun.  This failover
  17.      infrastructure is used by an SGI logical volume manager (XLV, XVM) to
  18.      select the path used for access to the logical volume(s) created on the
  19.      storage device(s).  In the presense of i/o errors, the SGI logical volume
  20.      manager will request from the failover infrastructure a new path to be
  21.      used for access to the erring logical volumes.  This path failover
  22.      requires the logical volume manager's plexing software.
  23.  
  24.      Failover is only possible for devices which utilize _d_k_s_c(_7_m), SGI's scsi
  25.      disk driver.
  26.  
  27.      Failover is not a multi-path load balancing driver.
  28.  
  29.      During system startup, failover automatically detects and configures
  30.      alternate paths (failover groups) to SGI Clariion RAID, SGI TP9100 RAID,
  31.      and SGI TP9400 RAID.  To specify a primary path to an SGI RAID, or to
  32.      configure primary and alternate paths to other more generic devices,
  33.      failover also processes configuration directives contained within the
  34.      /_e_t_c/_f_a_i_l_o_v_e_r._c_o_n_f configuration file which allow manual specification of
  35.      a failover group.
  36.  
  37.      Failover uses /_s_b_i_n/_f_o_c_o_n_f_i_g to parse the configuration file and direct
  38.      the creation of failover groups and the specification of primary paths
  39.      for SGI RAID.  /_s_b_i_n/_f_o_c_o_n_f_i_g should not be executed directly.
  40.  
  41.    AAAAlllltttteeeerrrrnnnnaaaatttteeee PPPPaaaatttthhhh CCCCoooonnnnffffiiiigggguuuurrrraaaattttiiiioooonnnn
  42.      Primary and alternate paths to devices are defined by two different
  43.      mechanisms.  Automatic detection, and manual configuration via a
  44.      configuration file.
  45.  
  46.      Detection of paths to SGI RAID devices is automatic and happens at the
  47.      time of device discovery during the probing of the scsi and fibre channel
  48.      buses.  The detected paths to the SGI RAID together make up a failover
  49.      group.  Any path within a failover group can be used for I/O requests
  50.      unless explicit primary path configuration is used (see "Using Manual
  51.      Configuration with SGI RAID" below).
  52.  
  53.      Specification of a primary path to an SGI RAID or configuration of other
  54.      disk storage devices into failover groups is declared within the
  55.      /_e_t_c/_f_a_i_l_o_v_e_r._c_o_n_f configuration file.  This file is processed during
  56.      failover startup, and when the /_e_t_c/_i_n_i_t._d/_f_a_i_l_o_v_e_r script is executed.
  57.      When /_e_t_c/_i_n_i_t._d/_f_a_i_l_o_v_e_r is executed with the ssssttttaaaarrrrtttt parameter, it
  58.      automatically calls _x_l_v__a_s_s_e_m_b_l_e(_1_m).  When executed with the iiiinnnniiiitttt
  59.      parameter, the execution of _x_l_v__a_s_s_e_m_b_l_e is skipped.
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ffffaaaaiiiilllloooovvvveeeerrrr((((7777MMMM))))                                                      ffffaaaaiiiilllloooovvvveeeerrrr((((7777MMMM))))
  71.  
  72.  
  73.  
  74.      An entry within /_e_t_c/_f_a_i_l_o_v_e_r._c_o_n_f which defines a failover group
  75.      consists of a single line, or multiple lines, all except the last ending
  76.      in a \ (backslash).  An entry consists of an arbitrary group name, a
  77.      primary path, and optionally up to fifteen alternate paths.  The group
  78.      name is an arbitrary string of up to 31 characters.  Following the group
  79.      name are the /_d_e_v/_s_c_s_i names associated with the primary and alternate
  80.      paths, the primary being the first path specified.
  81.  
  82.      With manual configuration of failover groups, only the specified primary
  83.      path can be used for I/O requests.  This is also the case if the
  84.      configuration file is used to explicitly specify a primary path to an SGI
  85.      RAID.
  86.  
  87.    UUUUssssiiiinnnngggg MMMMaaaannnnuuuuaaaallll CCCCoooonnnnffffiiiigggguuuurrrraaaattttiiiioooonnnn wwwwiiiitttthhhh SSSSGGGGIIII RRRRAAAAIIIIDDDD
  88.      SGI RAID devices can use the /_e_t_c/_f_a_i_l_o_v_e_r._c_o_n_f configuration file to
  89.      explicitly specify primary paths, rather than letting a volume manager
  90.      pick one.  This is useful, because if multiple controllers can each
  91.      access the same storage (in a SAN environment), volume managers will tend
  92.      to use a single controller to access all storage connected to a given
  93.      storage network, precluding using different host adapters to access
  94.      different devices on the storage network.
  95.  
  96.      Specifying a primary path allows the administrator to choose different
  97.      host adapters to access different storage devices, because the volume
  98.      manager will not be able to access storage through the alternate paths.
  99.      This is particularly useful when striping.  Only the primary path needs
  100.      to be specified in the /_e_t_c/_f_a_i_l_o_v_e_r._c_o_n_f file with this option.
  101.      Alternate paths will be automatically detected.
  102.  
  103.      Using manual configuration is recommended with the SGI TP9100 RAID as
  104.      performance to a lun is significantly reduced if both raid controllers
  105.      are utilized to access the lun.
  106.  
  107.    CCCCoooonnnnffffiiiigggguuuurrrraaaattttiiiioooonnnn FFFFiiiilllleeee DDDDiiiirrrreeeeccccttttiiiivvvveeeessss
  108.      Two configuration directives are available for use within the
  109.      /_e_t_c/_f_a_i_l_o_v_e_r._c_o_n_f configuration file.  These directives, #_v_e_r_b_o_s_e and
  110.      #_d_i_s_a_b_l_e__t_a_r_g_e_t__l_u_n__c_h_e_c_k modify the behavior of the /_s_b_i_n/_f_o_c_o_n_f_i_g
  111.      program used to parse the configuration file.  They must be placed at the
  112.      beginning of a line within the configuration file and effect all lines
  113.      following the directive.  Once enabled, these options cannot be disabled.
  114.  
  115.      #_v_e_r_b_o_s_e causes the program to emit debugging information.
  116.  
  117.      #_d_i_s_a_b_l_e__t_a_r_g_e_t__l_u_n__c_h_e_c_k permits the definition of a failover group
  118.      containing disks or luns with differing target and lun numbers.
  119.  
  120.    SSSSaaaammmmpppplllleeee CCCCoooonnnnffffiiiigggguuuurrrraaaattttiiiioooonnnn EEEEnnnnttttrrrriiiieeeessss
  121.      The sample file shows failover groups, each consisting of a primary path
  122.      and one or more alternate paths.
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ffffaaaaiiiilllloooovvvveeeerrrr((((7777MMMM))))                                                      ffffaaaaiiiilllloooovvvveeeerrrr((((7777MMMM))))
  137.  
  138.  
  139.  
  140.      #ident $Revision: 1.9 $
  141.      #
  142.      #       This is the configuration file for table driven failover support.
  143.      #
  144.      #       Please see the failover (7m) manual page for details on
  145.      #       how to use this file.
  146.      #
  147.      A       sc7d1l0 sc8d1l0
  148.      B       sc7d1l1 sc8d1l1
  149.      C       sc7d1l2 sc8d1l2
  150.      D       sc7d1l3 sc8d1l3
  151.      E       sc7d1l4 sc8d1l4
  152.      F       sc7d1l5 sc8d1l5
  153.      G       sc7d1l6 sc8d1l6
  154.      H       sc7d1l7 sc8d1l7
  155.      I       2000002037003be2/lun0/c3p1 2000002037003be2/lun0/c5p2
  156.      J       2000002037003c6c/lun0/c5p2 2000002037003c6c/lun0/c3p1
  157.  
  158.      lun16   2000006016fe0cc0/lun16/c104p0 2000006016fe0cc0/lun16/c108p0 \
  159.              2000006016fe0cc0/lun16/c110p0 2000006016fe0cc0/lun16/c109p0 \
  160.              2000006016fe0cc0/lun16/c107p0 2000006016fe0cc0/lun16/c106p0 \
  161.              2000006016fe0cc0/lun16/c105p0 2000006016fe0cc0/lun16/c103p0
  162.  
  163.      # Cause program to emit debugging information for the following
  164.      # groups.
  165.      #verbose
  166.      # specify a primary path
  167.      priA sc14d11l0
  168.      priB sc15d11l1
  169.  
  170.      # Cause program to ignore target and lun numbering for these raid luns.
  171.      #disable_target_lun_check
  172.      raid1     sc16d10l0 sc17d11l0 sc18d12l0 sc19d13l0
  173.  
  174.  
  175.    SSSSwwwwiiiittttcccchhhhiiiinnnngggg ttttoooo aaaannnn AAAAlllltttteeeerrrrnnnnaaaatttteeee PPPPaaaatttthhhh
  176.      Failover to an alternate path is controlled by an SGI logical volume
  177.      manager (XLV, XVM) and its plexing software.  When the logical volume
  178.      manager receives notification of an i/o error, it requests failover to
  179.      switch the erring device to an available alternate path.  If the path
  180.      switch is successful, the SGI logical volume manager retries the failed
  181.      i/o using the new path.
  182.  
  183.      The _s_c_s_i_f_o(1m) command is available to permit the system administrator to
  184.      manually request a switch to an alternate path.  While the scsifo command
  185.      performs a switch, it is not detected by the SGI logical volume manager
  186.      until the SGI logical volume manager receives an i/o error on the current
  187.      path due to the path no longer being available.  The SGI logical volume
  188.      manager then begins utilizing the new path.
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. ffffaaaaiiiilllloooovvvveeeerrrr((((7777MMMM))))                                                      ffffaaaaiiiilllloooovvvveeeerrrr((((7777MMMM))))
  203.  
  204.  
  205.  
  206.    IIIInnnnvvvveeeennnnttttoooorrrryyyy DDDDiiiissssppppllllaaaayyyy
  207.      The _h_i_n_v(1m) command will display the path status of primary and
  208.      alternate paths configured in the /etc/failover.conf configuration file.
  209.      The following sample _h_i_n_v output reflects the above sample configuration
  210.      file.  Three of the devices have failed over to the alternate path,
  211.      perhaps via the _s_c_s_i_f_o command.
  212.  
  213.      Integral SCSI controller 7: Version Fibre Channel AIC-1160, revision 1
  214.        Disk drive: unit 1 on SCSI controller 7 (primary path)
  215.        Disk drive: unit 1,lun 1, on SCSI controller 7 (primary path)
  216.        Disk drive: unit 1,lun 2, on SCSI controller 7 (primary path)
  217.        Disk drive: unit 1,lun 3, on SCSI controller 7 (primary path)
  218.        Disk drive: unit 1,lun 4, on SCSI controller 7 (primary path)
  219.        Disk drive: unit 1,lun 5, on SCSI controller 7 (alternate path) DOWN
  220.        Disk drive: unit 1,lun 6, on SCSI controller 7 (alternate path) DOWN
  221.        Disk drive: unit 1,lun 7, on SCSI controller 7 (alternate path) DOWN
  222.      Integral SCSI controller 8: Version Fibre Channel AIC-1160, revision 1
  223.        Disk drive: unit 1 on SCSI controller 8 (primary path)
  224.        Disk drive: unit 1,lun 1, on SCSI controller 8 (alternate path)
  225.        Disk drive: unit 1,lun 2, on SCSI controller 8 (alternate path)
  226.        Disk drive: unit 1,lun 3, on SCSI controller 8 (alternate path)
  227.        Disk drive: unit 1,lun 4, on SCSI controller 8 (alternate path)
  228.        Disk drive: unit 1,lun 5, on SCSI controller 8 (primary path)
  229.        Disk drive: unit 1,lun 6, on SCSI controller 8 (primary path)
  230.        Disk drive: unit 1,lun 7, on SCSI controller 8 (primary path)
  231.      Integral SCSI controller 3: Version Fibre Channel QL2200
  232.        Fabric Disk: node 2000002037003be2 port 1 lun 0 on SCSI controller 3 (primary path)
  233.        Fabric Disk: node 2000002037003c6c port 1 lun 0 on SCSI controller 3 (alternate path)
  234.      Integral SCSI controller 5: Version Fibre Channel QL2200
  235.        Fabric Disk: node 2000002037003be2 port 2 lun 0 on SCSI controller 5 (alternate path)
  236.        Fabric Disk: node 2000002037003c6c port 2 lun 0 on SCSI controller 5 (primary path)
  237.  
  238.      By using the _s_c_s_i_h_a(1m) command to reprobe the bus to which a down device
  239.      is connected, presuming the device is now responding on the bus, the
  240.      "DOWN" indicator displayed by _h_i_n_v can be cleared.
  241.  
  242. FFFFIIIILLLLEEEESSSS
  243.      /etc/failover.conf
  244.      /etc/init.d/failover
  245.      /etc/init.d/xlv
  246.      /var/sysgen/master.d/failover
  247.  
  248. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  249.      autoconfig(1m), dks(5m), ds(7m), hinv(1m), ioconfig(1m), scsifo(1m),
  250.      scsiha(1m), xlv_assemble(1m), and xlv(7m).
  251.  
  252. NNNNOOOOTTTTEEEESSSS
  253.      The group name specified within the /_e_t_c/_f_a_i_l_o_v_e_r._c_o_n_f file has no
  254.      external visibility.  It cannot be correlated to the group number
  255.      information displayed by the _s_c_s_i_f_o command.
  256.  
  257.  
  258.  
  259.  
  260.  
  261.                                                                         PPPPaaaaggggeeee 4444
  262.  
  263.  
  264.  
  265.